Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2006
All Rounds Final 1/2 1/4 First Second Third Fourth Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze Q3 N/A Q2 Q1 ER Q4 CR QF Q5 N/A
All Courts Acrylic N/A Clay Grass Carpet Hard I.hard
All Tour Wimbledon - London BNP Paribas Open - Indian Wells Australian Open - Melbourne Miami Open - Miami Hopman Cup - Nice Wimbledon - London Cincinnati Open - Cincinnati U.S. Open - New York Luxembourg F1 Belgium F1 Belgium F2 Belgium F3 Greece F4 Greece F5 Germany F23 Dominican Republic F1 Dominican Republic F2 Dominican Republic F3 Dominican Republic F4 Germany F5 Canada F1 Canada F2 Korea F1 Korea F2 Korea F3 Bosnia & Herzegovina F2 Kuwait F1 Kuwait F2 Italy F16 Italy F17 Italy F18 Germany F12 Croatia F8 Bosnia/Herzegovina F6 France F19 Great Britain F1 Bosnia/Herzegovina F1 Bosnia & Herzegovina F2 Italy F2 Italy F3 Italy F4 Italy F10 Germany F8 Germany F9 Germany F10 Germany F11 Belgium F1 France F18 Croatia F7 Croatia F8 Israel F4 Israel F3 Croatia F1 Croatia F2 Italy F6 Italy F7 France F3 Bosnia & Herzegovina F2 Bosnia & Herzegovina F3 Poland F2 Poland F3 Bosnia & Herzegovina F5 Serbia F1 Serbia F2 Serbia F3 Serbia F7 Croatia F7 Croatia F8 Croatia F9 Croatia F12 France F19 Croatia F13 France F20 Croatia F14 Turkey F32 Turkey F33 Turkey F3 Turkey F4 Croatia F1 Italy F1 Italy F2 Bosnia & Herzegovina F1 Bosnia & Herzegovina F2 Bosnia & Herzegovina F3 Bosnia & Herzegovina F5 Italy F20 Croatia F11 Croatia F12 Turkey F2 Croatia F1 Croatia F2 Italy F1 Italy F5 Bosnia & Herzegovina F4 Serbia F3 Croatia F12 Bulgaria F1 Samarkand Challenger Almaty Challenger Todi Challenger Palermo Challenger Mons Challenger Croatia F10 Geneva Challenger Como Challenger Todi Challenger Pingguo Challenger Braunschweig Challenger Scheveningen Challenger Orbetello Challenger Trani Challenger St. Remy Challenger Istanbul Challenger Tashkent Challenger Mons Challenger Geneva Challenger Cherbourg Challenger Le Gosier Challenger Blumenau Challenger Prague Challenger Milan Challenger San Marino Challenger Como Challenger Brasov Challenger Trnava Challenger Lermontov Challenger Dallas Challenger Bordeaux Challenger Kosice Challenger Istanbul Challenger Eskisehir Challenger Poznan Challenger Liberec Challenger Kazan Challenger Banja Luka Challenger Casablanca Challenger Irving Challenger Mersin Challenger Scheveningen Challenger San Benedetto Challenger Tampere Challenger Mons Challenger Geneva Challenger Morelos Challenger Irving Challenger San Benedetto Challenger Alphen Challenger Mohammedia Challenger Guadalajara Challenger Alphen Challenger Mohammedia Challenger Lisbon Challenger Santo Domingo Challenger Sarajevo Challenger Rennes Challenger Eckental Challenger Karshi Challenger New Haven Challenger Rabat Challenger BH Indoor Sarajevo - Sarajevo Ottignies-Louvain-la-Neuve Challenger Guangzhou Challenger Zadar Challenger Fergana Challenger Zagreb Challenger Santo Domingo Challenger Quimper Challenger Cordenons Challenger Prostejov Challenger Moscow Challenger Casablanca Challenger Rome Challenger Prostejov Challenger Tashkent Challenger Casablanca Challenger Trnava Challenger Noumea Challenger Braunschweig Challenger Bordeaux Challenger Ljubljana Challenger Blois Challenger Mons Challenger Meknes Challenger Kenitra Challenger Helsinki Challenger Ilkley Challenger Guayaquil Challenger Salzburg-Anif Challenger Tulln Challenger Dortmund Challenger Kobe Challenger Ottignies-Louvain-la-Neuve Challenger Istanbul Challenger Cary Challenger Szekesfehervar Challenger Tunis Challenger Montemar Challenger Canberra Challenger Cap Cana Challenger Zadar Challenger Orleans Challenger Quimper Challenger Lyon Challenger Phoenix Challenger Santos Challenger Meerbusch Challenger Sao Paulo Challenger Matsuyama Challenger Noumea Challenger Salzburg Challenger Phoenix Challenger Mallorca Challenger Arad Challenger Manama Challenger Aptos Challenger Rome 2 Challenger Nottingham 2 Challenger Trieste Challenger Meerbusch Challenger Barcelona Challenger Bergamo Challenger Bratislava Challenger Helsinki Challenger Lille Challenger Lugano Challenger Mauthausen Challenger Cordenons Challenger Brest Challenger Banja Luka Challenger Sibiu Challenger Yokohama Challenger Antalya Challenger Maia Challenger Ostrava Challenger Aix En Provence Challenger Verona Challenger San Marino Challenger Ethias Trophy - Mons Bergamo Challenger Ostrava Challenger Turin Challenger Tunis Challenger Bratislava Challenger Aircel Chennai Open - Chennai Bendigo Challenger Open Sud de France - Montpellier Ethias Trophy - Mons Open 13 - Marseille Alphen Challenger Split Challenger Barcelona Challenger Lisbon Challenger Zagreb Challenger Oeiras 3 Challenger Winston-Salem Open - Winston-Salem Izmir Challenger Valencia Open - Valencia Sibiu Challenger ABN AMRO World Tennis Tournament - Rotterdam Citi Open - Washington Winston-Salem Open - Winston-Salem If Stockholm Open - Stockholm Grand Prix Hassan II - Casablanca AEGON Championships - London Bendigo Challenger Alphen Challenger Jersey Challenger Winston-Salem Open - Winston-Salem Bergamo Challenger Bergamo Challenger Mouilleron-Le-Captif Challenger Helsinki Challenger Banja Luka Challenger Samarkand Challenger Swiss Indoors Basel - Basel PBZ Zagreb Indoors - Zagreb Mons Challenger BMW Open - Munich Heilbronn Challenger Geneva Open - Geneva Santo Domingo Challenger Topshelf Open - 's-Hertogenbosch Heilbronn Challenger Kazan Challenger Arad Challenger Kosice Challenger Memphis Open - Memphis Delray Beach Open - Delray Beach Abierto Mexicano Telcel - Acapulco Tanger Challenger BRD Nastase Tiriac Trophy - Bucharest TEB BNP Paribas Istanbul Open - Istanbul BMW Open - Munich Meknes Challenger Shenzhen Open - Shenzhen Swiss Indoors Basel - Basel Erste Bank Open - Vienna Qatar ExxonMobil Open - Doha Garanti Koza Sofia Open - Sofia Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Bet-at-home Open - Hamburg Shenzhen Open - Shenzhen Rakuten Japan Open - Tokyo San Luis Potosi Challenger Sydney International - Sydney ABN AMRO World Tennis Tournament - Rotterdam Marrakech Challenger AEGON Championships - London Plava Laguna Croatia Open - Umag Kremlin Cup - Moscow Libema Open - 's-Hertogenbosch St. Petersburg Open - St. Petersburg Erste Bank Open - Vienna Qatar ExxonMobil Open - Doha Open 13 Provence - Marseille European Open - Antwerp Astana Open - Nur-Sultan Antalya Open - Antalya Open Sud de France - Montpellier Qatar ExxonMobil Open - Doha Abierto Mexicano Telcel - Acapulco Malaysian Open - Kuala Lumpur St. Petersburg Open - St. Petersburg Kremlin Cup - Moscow Cherbourg Challenger Melbourne Summer Set - Melbourne Sydney Tennis Classic - Sydney Sarajevo Challenger Nordea Open - Bastad EFG Swiss Open - Gstaad Hangzhou Open - Hangzhou European Open - Brussels Studena Croatia Open - Umag Open 13 - Marseille Abierto Mexicano Telcel - Acapulco Grand Prix Hassan II - Casablanca Winston-Salem Open - Winston-Salem Bratislava Challenger BRD Nastase Tiriac Trophy - Bucharest China Open - Beijing AEGON International - Eastbourne Gerry Weber Open - Halle Delray Beach Open - Delray Beach Abierto Mexicano Telcel - Acapulco Konzum Croatia Open - Umag Winston-Salem Open - Winston-Salem China Open - Beijing Lima Challenger Abierto Mexicano - Los Cabos Dubai Duty Free Tennis Championships - Dubai Barcelona Open BancSabadell - Barcelona Antalya Cup - Antalya Abierto Mexicano - Los Cabos Poznan Challenger St. Petersburg Open - St. Petersburg Shenzhen Open - Shenzhen Noventi Open - Halle Vercelli Challenger Winston-Salem Open - Winston-Salem Kremlin Cup - Moscow Ostrava Challenger Anytech365 Andalucia Open - Marbella Poznan Challenger Open Sud de France - Montpellier Aircel Chennai Open - Chennai Serbia Open - Belgrade Citi Open - Washington Astana Open - Astana Andria Challenger Swiss Indoors Basel - Basel Firenze Open - Florence Qatar ExxonMobil Open - Doha Millennium Estoril Open - Estoril Open Parc - Lyon Libema Open - 's-Hertogenbosch Plava Laguna Croatia Open - Umag Mersin Challenger Mercedes Cup - Stuttgart Open 13 Provence - Marseille ABN AMRO Open - Rotterdam Gonet Geneva Open - Geneva Bucharest Open - Bucharest Winston-Salem Open - Winston-Salem Genova Challenger Loughborough Challenger Rio Open - Rio de Janeiro Abierto Mexicano Telcel - Acapulco Tiriac Open - Bucharest Boss Open - Stuttgart Citi Open - Washington Swiss Indoors Basel - Basel Open Sabadell Atlantico - Barcelona BMW Open - Munich Nottingham 1 Challenger Bet-at-home Cup - Kitzbuhel UNICEF Open - 's Hertogenbosch Campbell's Hall of Fame Tennis Championships - Newport BRD Nastase Tiriac Trophy - Bucharest Portugal Open - Oeiras Gerry Weber Open - Halle Sarajevo Challenger Brisbane International - Brisbane Bordeaux Challenger Buenos Aires Challenger Kosice Challenger U.S. National Indoor Tennis Championships - Memphis Open 13 - Marseille Delray Beach Open - Delray Beach Swiss Indoors Basel - Basel Rakuten Japan Open - Tokyo Moselle Open - Metz Kremlin Cup - Moscow Orleans Challenger Aircel Chennai Open - Chennai Apia International - Sydney Nordea Open - Bastad Open 13 - Marseille Dubai Duty Free Tennis Championships - Dubai European Open - Antwerp Erste Bank Open - Vienna TEB BNP Paribas Istanbul Open - Istanbul AEGON Championships - London Ostrava Challenger SkiStar Swedish Open - Bastad Vegeta Croatia Open - Umag Bet-at-home Open - Hamburg Credit Agricole Suisse Open - Gstaad Almaty Open - Almaty Swiss Indoors Basel - Basel Erste Bank Open - Vienna Qatar ExxonMobil Open - Doha Garanti Koza Sofia Open - Sofia ABN AMRO World Tennis Tournament - Rotterdam Winston-Salem Open - Winston-Salem Open 13 - Marseille Open de Nice Cote d'Azur - Nice Aegon Nottingham Open - Nottingham Konzum Croatia Open - Umag Braunschweig Challenger Erste Bank Open - Vienna Kremlin Cup - Moscow Bratislava Challenger Bratislava 2 Challenger Memphis Open - Memphis New York Open - New York Dubai Duty Free Tennis Championships - Dubai Forli 5 Challenger Barcelona Open BancSabadell - Barcelona Hungarian Open - Budapest TEB BNP Paribas Istanbul Open - Istanbul Kenitra Challenger Suisse Open - Gstaad Moselle Open - Metz St. Petersburg Open - St. Petersburg Perugia Challenger Como Challenger Swiss Indoors Basel - Basel Erste Bank Open - Vienna Open Sud de France - Montpellier Hamburg European Open - Hamburg Vancouver Challenger Gazprom Hungarian Open - Budapest Citi Open - Washington Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Banja Luka Challenger Winnipeg Challenger Plava Laguna Croatia Open - Umag Marbella Challenger Millennium Estoril Open - Estoril Belgrade Challenger Geneva Open - Geneva Canberra Challenger Turkish Airlines Open Antalya - Antalya SkiStar Swedish Open - Bastad Moselle Open - Metz Split Challenger Zhuhai Open - Zhuhai China Open - Beijing Rakuten Japan Open - Tokyo European Open - Antwerp Grand Prix Hassan II - Marrakech Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Abierto Mexicano Telcel - Acapulco ABN AMRO World Tennis Tournament - Rotterdam Zug Challenger Sibiu Challenger Dubai Duty Free Tennis Championships - Dubai Rosario Challenger Santo Domingo Challenger Barcelona Open Banc Sabadell - Barcelona Serbia Open - Belgrade Noventi Open - Halle Movistar Chile Open - Santiago Plava Laguna Croatia Open - Umag Swiss Indoors Basel - Basel ABN AMRO Open - Rotterdam Delray Beach Open - Delray Beach Open 13 Provence - Marseille Prague 2 Challenger Dubai Duty Free Tennis Championships - Dubai BMW Open - Munich bett1HULKS Championships - Cologne Noventi Open - Halle Istanbul Challenger Orleans Challenger Winston-Salem Open - Winston-Salem Moselle Open - Metz Qatar ExxonMobil Open - Doha European Open - Antwerp Stockholm Open - Stockholm Bratislava 2 Challenger United Cup - Australia Open Parc - Lyon ASB Classic - Auckland ABN AMRO World Tennis Tournament - Rotterdam Open 13 Provence - Marseille Barcelona Open Banc Sabadell - Barcelona Banja Luka Open - Banja Luka Brest Challenger Grand Prix Hassan II - Marrakech BMW Open - Munich Hamburg Open - Hamburg Winston-Salem Open - Winston-Salem Ismaning Challenger Danderyd Challenger Libema Open - 's-Hertogenbosch Atlanta Open - Atlanta Barletta Challenger Sony Ericsson Open - Miami Sony Open Tennis - Miami Mutua Madrid Open - Madrid Rogers Cup - Montreal Western & Southern Open - Cincinnati BNP Paribas Open - Indian Wells BNP Paribas Open - Indian Wells Miami Open - Miami Western & Southern Open - Cincinnati Internazionali BNL d'Italia - Rome Rolex Paris Masters - Paris Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome Western & Southern Open - Cincinnati Open Occitanie - Montpellier Nottingham 2 Challenger Bonn Challenger Shanghai Rolex Masters - Shanghai PBZ Zagreb Indoors - Zagreb Rolex Paris Masters - Paris If Stockholm Open - Stockholm Brisbane International - Brisbane Apia International - Sydney Open Parc - Lyon Kremlin Cup - Moscow Brisbane International - Brisbane Open 13 Provence - Marseille TEB BNP Paribas Istanbul Open - Istanbul Barcelona Open Banc Sabadell - Barcelona Citi Open - Washington Abierto Mexicano de Tenis Mifel - Los Cabos European Open - Antwerp ABN AMRO World Tennis Tournament - Rotterdam Qatar ExxonMobil Open - Doha Vilnius Challenger Heilbronn Challenger Bratislava 1 Challenger Ilkley Challenger Belgrade Open - Belgrade Brisbane International - Brisbane Adelaide International - Adelaide Barcelona Open Banc Sabadell - Barcelona Pau Challenger Phoenix Challenger Hellenic Championship - Athens Bordeaux Challenger Brisbane International - Brisbane Power Horse Cup - Dusseldorf Astana Open - Astana Shanghai Rolex Masters - Shanghai Western & Southern Open - Cincinnati Internazionali BNL d'Italia - Rome BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Monte-Carlo Rolex Masters - Monte-Carlo BNP Paribas Masters - Paris Miami Open - Miami Rogers Cup - Montreal Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai ABN AMRO World Tennis Tournament - Rotterdam BNP Paribas Masters - Paris Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris Heineken Open - Auckland Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rogers Cup - Montreal Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai Moselle Open - Metz BNP Paribas Masters - Paris Aircel Chennai Open - Chennai Stockholm Open - Stockholm Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Citi Open - Washington Rogers Cup - Toronto Western & Southern Open - Cincinnati BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Coupe Rogers - Montreal Miami Open - Miami Internazionali BNL d'Italia - Rome Shanghai Rolex Masters - Shanghai Monte-Carlo Rolex Masters - Monte-Carlo BNP Paribas Masters - Paris Western & Southern Open - New York Hangzhou Open - Hangzhou Japan Open Tennis Championships - Tokyo Dubai Duty Free Tennis Championships - Dubai BNP Paribas Open - Indian Wells BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Monte-Carlo Rolex Masters - Monte-Carlo National Bank Open - Montreal Western & Southern Open - Cincinnati Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome BNP Paribas Open - Indian Wells Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid BNP Paribas Open - Indian Wells Rogers Cup - Toronto Miami Open - Miami BNP Paribas Open - Indian Wells Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rolex Paris Masters - Paris Rolex Paris Masters - Paris Mutua Madrid Open - Madrid Shanghai Rolex Masters - Shanghai Mutua Madrid Open - Madrid National Bank Open - Toronto Topshelf Open - 's-Hertogenbosch European Open - Antwerp China Open - Beijing German Tennis Championships - Hamburg Australian Open - Melbourne Rakuten Japan Open - Tokyo Qatar ExxonMobil Open - Doha Open 13 Provence - Marseille Dubai Duty Free Tennis Championships - Dubai Dubai Duty Free Tennis Championships - Dubai Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Great Ocean Road Open - Melbourne Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York U.S. Open - New York Australian Open - Melbourne Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York French Open - Paris French Open - Paris Australian Open - Melbourne Australian Open - Melbourne French Open - Paris U.S. Open - New York Australian Open - Melbourne French Open - Paris Australian Open - Melbourne French Open - Paris French Open - Paris Mutua Madrid Open - Madrid Wimbledon - London French Open - Paris Australian Open - Melbourne Australian Open - Melbourne U.S. Open - New York Wimbledon - London Australian Open - Melbourne U.S. Open - New York French Open - Paris Wimbledon - London U.S. Open - New York U.S. Open - New York French Open - Paris Australian Open Qualifying - Doha Australian Open - Melbourne Wimbledon - London Internazionali BNL d'Italia - Rome U.S. Open - New York Wimbledon - London French Open - Paris U.S. Open - New York Argentina Open - Buenos Aires Internazionali BNL d'Italia - Rome Mallorca Championships - Mallorca Wimbledon - London U.S. Open - New York Monte-Carlo Rolex Masters - Monte-Carlo Davis Cup, Group II, 3R, DEN-BIH 3-2 Davis Cup, Group II, 2R, FIN-BIH 2-3 Davis Cup, World Group, PO, UKR-BEL 2-3 Davis Cup, World Group, QF, BEL-CAN 5-0 Davis Cup, World Group, F, BEL-GBR 1-3 Davis Cup, World Group, QF, BEL-ITA 3-2 Davis Cup, World Group, F, FRA-BEL 3-2 Davis Cup, Group I, 2R, SVK-BIH 2-3 ATP Cup - Brisbane, Perth, Sydney Davis Cup, World Group I, PO, BIH-RSA 3-1 Davis Cup, Qualifiers, 1R, FIN-BEL 2-3 Davis Cup, Group C, Hamburg Davis Cup, World Group, PO, SWE-BIH 3-1 Wimbledon (juniors) U.S. Open (juniors) Kooyong Classic - Kooyong All Lower level tournaments Davis Cup, Group II, 3R, BIH-LTU 2-3 Davis Cup, World Group, QR, AUS-BIH 4-0 Davis Cup, Finals, Group D Davis Cup, Group I, 1R, PER-BIH 3-2 Davis Cup, Group I, 1R, BIH-POL 5-0 Davis Cup, World Group, PO, KOR-BEL 3-2 Davis Cup, World Group, 1R, BEL-SUI 3-2 Davis Cup, Group I, 2R, GBR-BEL 1-4 Davis Cup, Group II, 2R, BLR-BIH 4-1 Davis Cup, Group II, 3R, LTU-BIH 0-5 Davis Cup, World Group, 1R, KAZ-BEL 3-2 Davis Cup, Group II, 1R, BIH-GRE 3-1 Davis Cup, World Group, SF, BEL-ARG 3-2 Nitto ATP Finals - London Davis Cup, World Group I, 1R, TPE-BIH 3-2 Davis Cup, Europe/Africa Group II, 2R, EST-BIH 2-3 Davis Cup, Europe/Africa Group II, 3R, POR-BIH 3-2 Davis Cup, World Group, PO, BEL-SWE 5-0 Davis Cup, World Group, 1R, BEL-SRB 2-3 Davis Cup, Group II, 1R, BIH-LUX 4-1 Davis Cup, Group II, 2R, BIH-MDA 1-3 Davis Cup, Group II, 1R, ZIM-BIH 1-4 Davis Cup, World Group, SF, BEL-AUS 3-2 Davis Cup, Group I, 1R, ECU-BIH 3-2 Davis Cup, World Group, 1R, BEL-CRO 2-3 Davis Cup, Group I, PO, TUN-BIH 1-3 Davis Cup, Group I, 1R, BIH-MEX 3-1 Davis Cup, Group I, 1R, BIH-GER 0-4 Davis Cup, Group I, PO, BUL-BIH 1-3 Davis Cup, Group I, PO, UZB-BIH 1-3 Davis Cup, Group II, 2R, BIH-TUR 3-1 Davis Cup, World Group, PO, BEL-BRA 4-0 Davis Cup, Group I, 2R, BIH-NED 1-3 Olympics - London Hopman Cup - Perth Davis Cup, World Group, 1R, BEL-HUN 3-2 Olympics - Rio de Janeiro Laver Cup - Chicago French Open (juniors) Wimbledon (juniors) French Open (juniors) Kooyong Classic - Kooyong Mubadala World Tennis Championship Barclays ATP World Tour Finals - London Manacor Challenger Japan Open Tennis Championships - Tokyo